/*******************************************************************************
 * Copyright (c) 2010-2012 Nikita Zhiltsov.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the GNU Public License v3.0
 * which accompanies this distribution, and is available at
 * http://www.gnu.org/licenses/gpl.html
 * 
 * Contributors:
 *     Nikita Zhiltsov - initial API and implementation
 *     Azat Khasanshin - implementation
 ******************************************************************************/
package ru.ksu.niimm.cll.mocassin.crawl.parser.latex;

import edu.uci.ics.jung.graph.Graph;

/**
 * The class build a graph from a given latex document model.
 * 
 * @author Nikita Zhiltsov
 * 
 */
public interface StructureBuilder {
    /**
     * Builds a graph from a latex document model
     * 
     * @param model
     *            latex document model
     * @returns graph that consists of latex environment as nodes and relations
     *          (see {@code EdgeType}) as edges
     */
    Graph<Node, Edge> buildStructureGraph(LatexDocumentModel model);

}
